/**
  * Author: Mei
  * Date: 2020-12-10 20:44
  * Description: 变化的模板  变化的是个数和类型
  *
  */
#include <vector>
#include <iostream>
#include <string>
#include <bitset>
#include <functional>
#include <algorithm>
#include <list>
#include <set>
#include <map>

using namespace std;

void func() {
}

template<typename T, typename... Types>
void func(const T &firstArg, const Types &...args) { //与下面可以共同存在  下面不会调用 特化
    cout << firstArg << endl;
    cout << sizeof...(args) << endl;
    func(args...);
};
template<typename... Types>
void func(const Types &...args) { //泛化
    //cout << firstArg << endl;
    //cout << sizeof...(args) << endl;
    //func(args...);
};
int main() {
    func("adf", 123, bitset<10>(123), 12.3);

    return 0;
}

